/**
 * 基本数据类型判断： null、undefined、boolean、number、string、symbol(Es2015 Es6)
 */
console.log(typeof null); // object // 直接使用if(ck) 语法判断是否为空
console.log(typeof undefined);// undefined
console.log(typeof Boolean); // boolean
console.log(typeof 1); // number
console.log(typeof 'aaa'); // string
console.log(Symbol('this is symbol')); // symbol


/**
 * 引用数据类型的判空： array、object、function
 *
 */
console.log(typeof ['a', 1, 'b']); // array
console.log(typeof {name: 'aaa'}); // object
console.log(typeof function (){}); // function

/**
 * Obj的类型判断和空值判断
*/
console.log([] + {}) // 输出的是 [object Object]
const obj = {}
console.log(obj);
console.log(Object.keys(obj).length === 0);

// 自定义方法， 判断是否为空
function isEmpty(obj) {
    for (const objKey in obj) {
        return false
    }
    return true
}

console.log(isEmpty(obj));
console.log(obj.toString());// [object Object]
